Lazy Satisfiability Modulo Theories
نویسنده
چکیده
Satisfiability Modulo Theories (SMT) is the problem of deciding the satisfiability of a first-order formula with respect to some decidable first-order theory T (SMT (T )). These problems are typically not handled adequately by standard automated theorem provers. SMT is being recognized as increasingly important due to its applications in many domains in different communities, in particular in formal verification. An amount of papers with novel and very efficient techniques for SMT has been published in the last years, and some very efficient SMT tools are now available. Typical SMT (T ) problems require testing the satisfiability of formulas which are Boolean combinations of atomic propositions and atomic expressions in T , so that heavy Boolean reasoning must be efficiently combined with expressive theory-specific reasoning. The dominating approach to SMT (T ), called lazy approach, is based on the integration of a SAT solver and of a decision procedure able to handle sets of atomic constraints in T (T -solver), handling respectively the Boolean and the theory-specific components of reasoning. Unfortunately, neither the problem of building an efficient SMT solver, nor even that of acquiring a comprehensive background knowledge in lazy SMT, is of simple solution. In this paper we present an extensive survey of SMT, with particular focus on the lazy approach. We survey, classify and analyze from a theory-independent perspective the most effective techniques and optimizations which are of interest for lazy SMT and which have been proposed in various communities; we discuss their relative benefits and drawbacks; we provide some guidelines about their choice and usage; we also analyze the features for SAT solvers and T -solvers which make them more suitable for an integration. The ultimate goals of this paper are to become a source of a common background knowledge and terminology for students and researchers in different areas, to provide a reference guide for developers of SMT tools, and to stimulate the cross-fertilization of techniques and ideas among different communities.
منابع مشابه
Satisfiability Modulo Theories
Satisfiability Modulo Theories (SMT) refers to the problem of determining whether a first-order formula is satisfiable with respect to some logical theory. Solvers based on SMT are used as back-end engines in model checking applications such as bounded, interpolation-based, and predicate abstraction-based model checking. After a brief illustration of these uses, we survey the predominant techni...
متن کاملPropagation = Lazy Clause Generation
Finite domain propagation solvers effectively represent the possible values of variables by a set of choices which can be naturally modelled as Boolean variables. In this paper we describe how we can mimic a finite domain propagation engine, by mapping propagators into clauses in a SAT solver. This immediately results in strong nogoods for finite domain propagation. But a naive static translati...
متن کاملCLP Entailment as Lazy Clause Generation
In this paper we present an algorithm for deciding entailment G |= H of properties G and H defined using Constraint Logic Programming (CLP). The algorithm is based on Satisfiability Modulo Theories (SMT) over a theory derived from the CLP program. The implementation is based on lazy clause generation. Existing methods for discharging such entailments rely on applying a set of proof rules (such ...
متن کاملTSAT + + : an Open Platform for Satisfiability Modulo Theories 1
This paper describes TSAT++, an open platform which realizes the lazy SATbased approach to Satisfiability Modulo Theories (SMT). SMT is the problem of determining satisfiability of a propositional combination of T -literals, where T is a first-order theory for which a satisfiability procedure for a set of ground atoms is known. TSAT++ enjoys a modular design in which an enumerator and a theorys...
متن کاملTSAT++: an Open Platform for Satisfiability Modulo Theories
This paper describes TSAT++, an open platform which realizes the lazy SATbased approach to Satisfiability Modulo Theories (SMT). SMT is the problem of determining satisfiability of a propositional combination of T -literals, where T is a first-order theory for which a satisfiability procedure for a set of ground atoms is known. TSAT++ enjoys a modular design in which an enumerator and a theorys...
متن کاملSplitting on Demand in SAT Modulo Theories
Lazy algorithms for Satisfiability Modulo Theories (SMT) combine a generic DPLL-based SAT engine with a theory solver for the given theory T that can decide the T -consistency of conjunctions of ground literals. For many theories of interest, theory solvers need to reason by performing internal case splits. Here we argue that it is more convenient to delegate these case splits to the DPLL engin...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007